home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d8 / qmqmpc34.arc / PCBUD202.DOC < prev    next >
Text File  |  1990-09-20  |  12KB  |  318 lines

  1.                             ---------
  2.                             PCBUD.COM
  3.                             ---------
  4.                           - VERSION 2 -
  5.  
  6.                     PCBoard Upload - Download      
  7.  
  8.         This program is an adaptation of David Terry's Program of 
  9. February 26, 1985  (found on many BBS's as QMPCBSCR.ARC).  The 
  10. motivation to make the changes was prompted by a change in PCBoard 
  11. software from v12 to v14.  The changing of the 1k-Xmodem  protocall
  12. name from "Y" to "O" made QSCRIPT2 obsolete.  So, this fill-in program 
  13. came to exist.
  14.  
  15.         Version 2.0 was written to run under Qmodem v4.0.  If you 
  16. don't have Qmodem v4.0 yet, get it and register it!  Scripts run 
  17. noticeably faster on my XT under Qmodem 4.0 than they did under 3.1.
  18.  
  19.         This program is public domain.  Feel free to copy it, 
  20. distribute it, whatever.  David Terry deserves much of the credit for 
  21. placing SCRIPT.PAS in the public domain.  All I did was modify the 
  22. source code slightly to suit my desires.
  23.  
  24.         This program is guaranteed to do absolutely nothing.  Use it 
  25. at your own risk.  I have tested it and find it to be a useful tool 
  26. FOR ME.  I will not be responsible for any losses you may suffer from 
  27. the use of this tool.
  28.  
  29.                                                 Chuck  Seyboldt
  30.                                                      02-01-1989  
  31.  
  32.  
  33. WHAT IT DOES:  ------------------------------------------------------
  34.  
  35.         PCBUD is a program which writes QMODEM SCRIPT segments.  These 
  36. segments will perform automatic file uploading and downloading to any 
  37. BBS running PCBoard v12 or PCBoard v14 software.  The SCRIPT has been 
  38. tested for downloading from PCBoard v10 and seems to work....but no 
  39. promises!
  40.  
  41.  
  42. WHAT YOU MUST DO:  --------------------------------------------------
  43.          ^^^^
  44.         Run PCBUD.COM from the directory where your QMODEM will look
  45. for scripts.  PCBUD puts it's script segments into the directory that
  46. you are logged onto when you call PCBUD.     *** IMPORTANT ***
  47.  
  48. It is allowable to place PCBUD into another directory that is in your 
  49. PATH, but you MUST call PCBUD while you are logged onto your QMODEM 
  50. script directory.
  51.  
  52.         You will be prompted for a BBS identifier.  This is optional. 
  53. I use this feature so as to be able to create unique script segments
  54. for the boards I frequent.  You will know if you need this feature.
  55.  
  56.         You will be prompted for the name of your u/l-d/l directory.  
  57. This is the directory that Qmodem downloads to and uploads from.  The 
  58. program only supports one directory for both functions.
  59.  
  60.         When you are presented with the selection menu, you have six 
  61. choices:
  62.  
  63.                 A  for an ASCII message upload (message deleted after
  64.                    upload to avoid repetition and ease housekeeping)
  65.  
  66.                 N  for an ASCII message upload (message retained in 
  67.                    case you plan to use it again)
  68.  
  69.       (PLEASE:  read the section below before attempting ASCII u/l's)
  70.  
  71.                 U  for upload a file
  72.  
  73.                 D  for download a file
  74.  
  75.                 L  for writing a segment that logs off PCBoard
  76.                    (this also quits PCBUD)
  77.  
  78.                 Q  for leaving PCBUD                                
  79.                    (or a CR alone to quit)
  80.                 
  81.         I believe the prompts in PCBUD are clear enough that you 
  82. will navigate without trouble.
  83.  
  84.  
  85. DEFAULTS  are set up as follows:
  86. --------
  87. u/l and d/l directory = \QM\DL      \     You get these if you
  88. u/l and d/l protocall = Z            >    don't enter anything
  89. script segment name   = UD.SEG      /     to the contrary.
  90.  
  91. An empty CR will terminate the event or the program at other times.
  92.  
  93. You will have to gain access to a Pascal compiler if you want to 
  94. change defaults.  Or, you could employ a keyfake program (such as
  95. keyfake or stackey) to pass your defaults to PCBUD.
  96.  
  97.  
  98. SCRIPT FEATURES
  99. ------ --------
  100.         The QMODEM Script code that PCBUD generates contains a fair 
  101. amount of error-trapping.  For example, if it doesn't see "Command" 
  102. when it wants to, it sends a "^M" then waits 5 seconds....then  sends
  103. another "^M", and continues until it sees "Command".  If the carrier is 
  104. lost during the script execution, that error is trapped as well.  The 
  105. script will terminate.
  106.  
  107.         The QMODEM Script code that PCBUD generates will make sure 
  108. that your requested Uploads exist on your disk.  If you asked to 
  109. upload a file that isn't in your u/l-d/l directory, the script goes to
  110. the next event.
  111.  
  112.         The QMODEM Script code that PCBUD generates is not heavily 
  113. commented.  It is pretty simple to follow though.
  114.  
  115.  
  116.  
  117.                           *****************
  118. !***** NO NO'S *****!   <***** NO NO'S *****>   !***** NO NO'S *****!
  119.                           *****************
  120.  
  121.  DO NOT        use a  "  in upload descriptions.  This will write 
  122.                Qmodem Script that won't work.
  123.  
  124.  DO NOT        use a  "  as a character in a filename.  DOS won't
  125.                allow it and the generated script won't work.
  126.  
  127.  DO NOT        attempt a one character BBS identifier or a BBS 
  128.                identifier with an illegal filename character.
  129.  
  130.  *******************************************************************
  131.  
  132.  
  133.  
  134.    HOW TO INTERFACE THE SCRIPT SEGMENTS WITH YOUR QMODEM SESSIONS
  135.  
  136.         There are many ways to do this.  One of them is to call a 
  137. short script while online.  The name of that short script might be 
  138. XFER.
  139.  
  140. XFER -------------------
  141.  
  142. DOS      "cd \qm\scr"                       ; Your script dir
  143. DOS      "pcbud"                            
  144. SCRIPT   UD.SEG                             ; Runs the script segment
  145.                                             ;      (that PCBUD wrote)
  146.  
  147. DOS      "DEL \qm\scr\UD.USD"               ; Rename for further use
  148. DOS      "REN \qm\scr\UD.SEG  UD.USD"       ; "just in case!"
  149.  
  150.  
  151.  
  152.         For those of you who want a script generator for logging on
  153. to a BBS, I suggest you copy the following .LOG file as a script.  It
  154. will faithfully log you onto a PCBoard v12 or v14 everytime.  The 
  155. only assumption it makes is that you have your password in the dialing
  156. directory.
  157.  
  158.         Then, you may chain to a previously prepared UD.SEG from
  159. within the PCB14.LOG auto log-in script as follows:
  160.  
  161. PCB14.LOG --------------
  162.  
  163. TURNOFF  CAPTURE 
  164. TIMEOUT  60 ABORT                                      ; Logon TIMEOUT
  165. WHEN     "=no change?" "^~^M"
  166. WAITFOR  "nter)=no? "
  167. SEND     "y q ns^MChuck Seyboldt^M$PASSWORD^M"         ; Put in YOUR name
  168.  
  169. TIMEOUT  60 ABORT
  170. WHEN     "inue? " "^M"
  171. WHEN     "=yes? " "n^M"
  172. WHEN     " (NS)?" "n^M"
  173. WHEN     "More? " "n^M"
  174. WAITFOR  "mmand? "
  175. WHEN
  176.  
  177. NOTE     <<  CONNECTED TO $BOARD  >>
  178.  
  179. ; Qscript handler begins here...       
  180. ;           ┌───────────────────────────  Change  <--to your Qmodem
  181. ;           │                             ^^^^^^     Script directory
  182. ;        -------
  183. EXIST    \qm\scr\UD.SEG UDSCRIPT        ; Test for u/l segment
  184. GOTO S_END                              ; Exit if segment not found
  185. UDSCRIPT:
  186. NOTE
  187. NOTE     The file UD.SEG has been detected
  188. NOTE     PCBoard u/l & d/l handler now executing...
  189. NOTE
  190. SCRIPT   UD.SEG                         ; Call u/l script segment
  191. PAUSE    2000
  192. GETSCR
  193. DOS      "DEL \qm\scr\UD.USD"
  194. DOS      "REN \qm\scr\UD.SEG  UD.USD"   
  195. ;             --------
  196. ;                 ^--------------------  Change these too!!!!!
  197. PUTSCR
  198.  
  199. S_END:
  200. RETURN
  201.  
  202. ABORT:
  203. SEND     "^M^~^~^X^~^~^M^~^~G^M"
  204. HANGUP
  205. ---------------------------------------------------------------------
  206.  
  207.         I offer a significant  CAUTION  if you follow the Chained 
  208. script route.
  209.  
  210.         IF you integrate this way, BE SURE to include a TIMEOUT for 
  211. *EVERY*  WAITFOR.  I found out the hard way.  Bizzare results are in
  212. store if you fail to include the correct TIMEOUTS.  It  is important
  213. to have these TIMEOUTS even before the  "Qscript handler"  begining.
  214.  
  215.         Don't be alarmed.  If your script is identical to the above 
  216. code then all should run just fine.
  217.  
  218.  
  219.  
  220. ******  ASCII STUFF  ******************************************************
  221.  
  222.         First the cautions:  the ASCII u/l feature is a little tricky.  
  223. | If you use a FAKEY or STACKEY command in your Qmodem/Zmodem batch      |
  224. | files to avoid striking a key after a manual Zmodem transfer then the  |
  225. | ASCII u/l feature MUST be run before any Zmodem use.  Otherwise, the   |
  226. | stacked keystroke(s) will be sent as the first line(s) of your ASCII   |
  227. | message.  This makes the message to ALL (and  could be embarrassing).  |
  228.         Since Qmodem 4.0 returns to terminal after a Zmodem transfer, 
  229. you are not likely to run into the above problem while using PCBUD 2.
  230.  
  231.          To successfully send a message with the script you must
  232. adhere to a strict layout of your ASCII message.  A sample message
  233. follows:
  234.  
  235.  
  236. Joe Gezhundheit
  237. Sample ASCII Message
  238. n
  239. Hi Joe,
  240.         This is a sample of correctly formatted ASCII text that can be 
  241. automatically uploaded with a Qmodem script.  After the script sends 
  242. an "E" to cause PCBoard to look for a text entry, the script waits for
  243. the  To (Enter)=`ALL'?  prompt.  Then it sends this message, first the
  244. receivers name, then the subject, then r for receiver only (or n for 
  245. no message security), then the body of the message.  It is important 
  246. that there are no empty lines in the message or PCBoard will think the 
  247. message is over before it really is.  But if you've done ASCII u/l 
  248. before you know about this.  Really quite easy to make a message with 
  249. the correct structure.  I hope you get as much use out of this program 
  250. as I'm getting.  And.... please make suggestions or requests to your 
  251. heart's content.  This tool should be convenient to use.
  252. .
  253.         Thanks for your time.  I sure do appreciate it!
  254. .
  255. Sat  12-31-1988         17:59:14                        Chuck·S
  256.  
  257. ---------------------------------------------------------------------
  258. Files included in this package:
  259.  
  260. PCBUD200  PAS \    Source code for PCBUD u/l-d/l generator
  261. PCBUD200  COM  >   Compiled  (with TURBO PASCAL v3.0)
  262. PCBUD     DOC /    This document
  263.  
  264. -----------------------------------------------------------------------
  265.  
  266. --------- REVISION HISTORY --------------------------------------------
  267.  
  268. 1-11-89         First public u/l as PCBUD10.ARC
  269.  
  270. 1-12-89         Corrected ASCII u/l sequence.  WAITFOR  ", (SC)? " was
  271.                 WAITFOR  "(S), (SC)? ".  This failed on PCBoard v14.
  272.  
  273.                 Corrected to allow upper case command input.
  274.  
  275.  
  276.                 Renamed to PCBUD101.ARC (limited distribution).
  277.  
  278. 1-22-89         Eliminated PCBUDM.*  (monochrome version)
  279.                 and the original script generator (SCRIPT.ARC).
  280.  
  281.                 Renamed to PCBUD102.ARC
  282.  
  283. 2-05-89         Revised to run under Qmodem v4.0
  284.  
  285.                 Added "delete" and "no-delete" ASCII options.
  286.  
  287.                 Added a check to insure u/l descriptions are under
  288.                 45 characters in length.
  289.  
  290.                 Revised TIMEOUTS after uploads.  Cosmetic.
  291.  
  292.                 Added error trap for host upload disk full.
  293.  
  294.                 Added "IF $OFFLINE ..."  error trapping.
  295.  
  296.                 Added Xmodem CRC protocall (don't ask).
  297.                 Added Ymodem-G   protocall.
  298.  
  299.                 Renamed to PCBUD200.ARC
  300.  
  301. 4-11-89         Moved PAUSE to occur before UPLOAD or DOWNLOAD
  302.                 command to avoid problems with Zmodem.
  303.  
  304. 7-4-89          Changed code to eliminate need for pressing CR
  305.                 after choosing command option.
  306.  
  307.                 Added PACESPEED to ASCII uploads to keep host from
  308.                 barfing from too rapid a transfer.
  309.  
  310.                 Better color handling.  Now resets the colors to
  311.                 where they were rather than imposing white on black
  312.                 after PCBUD error messages or log-off screen.
  313.  
  314.                 Nicer logoff handling.  Aborted logoffs don't reset
  315.                 your screen colors.
  316.  
  317.                 Renamed to PCBUD202.ZIP
  318.